﻿using System;
using System.Collections.Generic;
using Microsoft.Xna.Framework.Content;

namespace FlanProjectData.GameObjects
{
    public class CharacterStat
    {
        [ContentSerializerIgnore]
        public int CurrentHealthPoints { get; set; }
        public int MaxHealthPoints { get; set; }

        [ContentSerializerIgnore]
        public int CurrentManaPoints { get; set; }
        public int MaxManaPoints { get; set; }

        public int Strength { get; set; }
        public int Resistance { get; set; }
        public int Intelligence { get; set; }
        public int Accuracy { get; set; }
        public float AttackSpeed { get; set; }
        public float MovementSpeed { get; set; }
        public int DefendPercentage { get; set; }
    }

    public class SkillStat
    {
        public int RequiredCharacterLevel { get; set; }
        public int Damage { get; set; }
        public float Multiplier { get; set; }
        public float Cooldown { get; set; }
        public float CastTime { get; set; }
    }

    public class ItemStat
    {
        #region Bonus Stats
        [ContentSerializer(Optional = true)]
        public int BonusStrength { get; set; }
        [ContentSerializer(Optional = true)]
        public int BonusArmor { get; set; }
        [ContentSerializer(Optional = true)]
        public int SpeedAttack { get; set; }
        [ContentSerializer(Optional = true)]
        public int BonusDexterity { get; set; }
        #endregion

        #region Required Stats
        [ContentSerializer(Optional = true)]
        public int RequiredStrength { get; set; }
        [ContentSerializer(Optional = true)]
        public int RequiredArmor { get; set; }
        [ContentSerializer(Optional = true)]
        public int RequiredSpeed { get; set; }
        [ContentSerializer(Optional = true)]
        public int RequiredDexterity { get; set; }
        [ContentSerializer(Optional = true)]
        public int RequiredCharacterLevel { get; set; }
        //TODO add Required Style of Caracter need to use it.
        #endregion
    }
}
